package com.hgnu.dorm.mapper;

import com.hgnu.dorm.domain.dto.StudentPageQueryDto;
import com.hgnu.dorm.domain.po.Student;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface StudentMapper {
    /**
     * 学生登录
     * @param student 学生信息
     * @return 学生信息
     */
    @Select("select * from dorm.student where student_id=#{studentId} and password = #{password}")
    Student login(Student student);
    /**
     * 查询学生信息
     *
     * @param id 学生信息主键
     * @return 学生信息
     */
    public Student selectStudentById(Integer id);

    /**
     * 查询学生信息列表
     *
     * @param dto 学生信息
     * @return 学生信息集合
     */
    public List<Student> selectStudentList(StudentPageQueryDto dto);

    /**
     * 新增学生信息
     *
     * @param student 学生信息
     * @return 结果
     */
    public int insertStudent(Student student);

    /**
     * 修改学生信息
     *
     * @param student 学生信息
     * @return 结果
     */
    public int updateStudent(Student student);


    /**
     * 批量删除学生信息
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteStudentByIds(Integer[] ids);

    /**
     * 根据条件统计学生人数
     */
    public Long countStudent(StudentPageQueryDto dto);
}
